package com.example.rbac.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.rbac.model.Permission;
import java.util.List;
import java.util.Map;

public interface PermissionService extends IService<Permission> {
    
    // 查询所有接口权限信息
    List<Permission> getAllPermissions();
    
    // 根据角色ID查询权限列表
    List<Permission> getPermissionsByRoleId(Long roleId);
    
    // 给角色分配权限
    boolean assignPermissionsToRole(Long roleId, List<Long> permissionIds);
    
    // 初始化系统权限，在项目启动时调用
    void initPermissions();
    
    // 获取接口权限映射，用于权限验证
    Map<String, String> getApiPermissionMap();
}